# coding:utf-8
'''
Created on 2011-3-13
打开任何文件，不管是本地文件，还是网络上的文件，或者字符串，都可
使用openAnyThing方法打开。
@author: Administrator
'''
def openAnyThing(source):
    # 尝试使用urllib打开文件（如果不能打开，则证明此文件不是来自网络）
    import urllib
    try:
        return urllib.urlopen(source);
    except (IOError, OSError):
        pass
    
    # 尝试打开本地文件（如果不能打开，则证明此文件不是本地文件）
    try:
        return open(source)
    except(IOError, OSError):
        pass
    
    # 最后将字符串转换为类文件对象返回
    import StringIO
    return StringIO.StringIO(str(source))